package com.ys.entity.finance;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCW_ExpenseSettleReturnUsed", catalog="Id")
public class TcwExpenseSettleReturnUsed extends BaseEntity<TcwExpenseSettleReturnUsed> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="ExpenseSettleReturnBid", nameJava="expenseSettleReturnBid", typeDataBase="varchar")
	private String expenseSettleReturnBid;
	@YsField(nameDataBase="ExpenseSettleReturnItemId", nameJava="expenseSettleReturnItemId", typeDataBase="bigint")
	private Long expenseSettleReturnItemId;
	@YsField(nameDataBase="UsedSourceId", nameJava="usedSourceId", typeDataBase="bigint")
	private Long usedSourceId;
	@YsField(nameDataBase="UsedSourceType", nameJava="usedSourceType", typeDataBase="tinyint")
	private Integer usedSourceType;
	@YsField(nameDataBase="ReturnAmountTotal", nameJava="returnAmountTotal", typeDataBase="decimal")
	private BigDecimal returnAmountTotal;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TcwExpenseSettleReturnUsed setId(Long id) {
		this.id = id;
		return this;
	}
	public String getExpenseSettleReturnBid() {
		return expenseSettleReturnBid;
	}
	public TcwExpenseSettleReturnUsed setExpenseSettleReturnBid(String expenseSettleReturnBid) {
		this.expenseSettleReturnBid = expenseSettleReturnBid;
		return this;
	}
	public Long getExpenseSettleReturnItemId() {
		return expenseSettleReturnItemId;
	}
	public TcwExpenseSettleReturnUsed setExpenseSettleReturnItemId(Long expenseSettleReturnItemId) {
		this.expenseSettleReturnItemId = expenseSettleReturnItemId;
		return this;
	}
	public Long getUsedSourceId() {
		return usedSourceId;
	}
	public TcwExpenseSettleReturnUsed setUsedSourceId(Long usedSourceId) {
		this.usedSourceId = usedSourceId;
		return this;
	}
	public Integer getUsedSourceType() {
		return usedSourceType;
	}
	public TcwExpenseSettleReturnUsed setUsedSourceType(Integer usedSourceType) {
		this.usedSourceType = usedSourceType;
		return this;
	}
	public BigDecimal getReturnAmountTotal() {
		return returnAmountTotal;
	}
	public TcwExpenseSettleReturnUsed setReturnAmountTotal(BigDecimal returnAmountTotal) {
		this.returnAmountTotal = returnAmountTotal;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TcwExpenseSettleReturnUsed setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TcwExpenseSettleReturnUsed setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TcwExpenseSettleReturnUsed setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TcwExpenseSettleReturnUsed tcwExpenseSettleReturnUsed(
		String expenseSettleReturnBid,
		Long expenseSettleReturnItemId,
		Long usedSourceId,
		Integer usedSourceType,
		BigDecimal returnAmountTotal,
		Integer status
			) {
		TcwExpenseSettleReturnUsed entity = new TcwExpenseSettleReturnUsed();
		entity.setExpenseSettleReturnBid(expenseSettleReturnBid);
		entity.setExpenseSettleReturnItemId(expenseSettleReturnItemId);
		entity.setUsedSourceId(usedSourceId);
		entity.setUsedSourceType(usedSourceType);
		entity.setReturnAmountTotal(returnAmountTotal);
		entity.setStatus(status);
		return entity;
	}
}